package com.ac.input.dao;

import java.util.List;

import com.caac.core.util.Page;
import com.ac.input.web.form.DataForm;

/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright AgileCentury 2004</p>
 * <p>Company: AgileCentury</p>
 * @author <a href="mailto:lianzs@tom.com">Lianzs</a>
 * @version 1.0
 */

public interface BaseDao {
    public Object getObject(String sql, String viewStr, String whereStr);

    public void saveObject(String sql);
    
	public void saveObject(final DataForm form);

    public Object getObject(String sql, Class entityClass);

    public Object getObject(String sql, Object[] objs, Class entityClass);

    public List getObjects(String sql);

    public List getObjects(String sql, Object objs[]);

    public List getObjects(String sql, Class entityClass);

    public List getObjects(String sql, Object[] objs, Class entityClass);

    public List getObjects(final String sql, final int from, final int size);

    public List getObjects(final String sql, final String viewStr,
                           final String whereStr, final String orderStr,
                           final int from,
                           final int size);

    public List getObjects(final String sql, final Page page);

    public List getObjects(final String sql, final String viewStr,
                           final String whereStr, final String orderStr,
                           final Page page);

    public int getCount(final String sql);

    public int getCount(final String sql, final String whereStr);
}
